package cn.topevery.garden.entity.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.topevery.garden.entity.po.GreFile;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.locationtech.jts.geom.Geometry;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 绿地记录 视图
 *
 * @author code-generate
 * @date 2022-01-05
 */
@Data
@ApiModel(value = "GreLandRecord 视图", description = "绿地记录 视图")
public class GreLandRecordVO implements Serializable{
    /**
     * 自增id
     */
    private Integer id;

        /**
     * land Id
     */
    @ApiModelProperty(value = "land Id")
    @Excel(name = "land Id", orderNum = "0")
    private Integer landIntId;

    /**
     * UUID
     */
    @ApiModelProperty(value = "UUID")
    @Excel(name = "UUID", orderNum = "0")
    private String landId;

    /**
     * 编号
     */
    @ApiModelProperty(value = "编号")
    @Excel(name = "编号", orderNum = "0")
    private String code;

    /**
     * 大类ID
     */
    @ApiModelProperty(value = "大类ID")
    @Excel(name = "大类ID", orderNum = "0")
    private String bigClassId;

    /**
     * 大类
     */
    @ApiModelProperty(value = "大类")
    @Excel(name = "大类", orderNum = "0")
    private String bigClassName;

    /**
     * 中类ID
     */
    @ApiModelProperty(value = "中类ID")
    @Excel(name = "中类ID", orderNum = "0")
    private String mediumClassId;

    /**
     * 中类
     */
    @ApiModelProperty(value = "中类")
    @Excel(name = "中类", orderNum = "0")
    private String mediumClassName;

    /**
     * 小类Id
     */
    @ApiModelProperty(value = "小类Id")
    @Excel(name = "小类Id", orderNum = "0")
    private String smallClassId;

    /**
     * 小类
     */
    @ApiModelProperty(value = "小类")
    @Excel(name = "小类", orderNum = "0")
    private String smallClassName;

    /**
     * 所属路段
     */
    @ApiModelProperty(value = "所属路段")
    @Excel(name = "所属路段", orderNum = "0")
    private String aloneLoad;

    /**
     * 绿地名称
     */
    @ApiModelProperty(value = "绿地名称")
    @Excel(name = "绿地名称", orderNum = "0")
    private String greeClass;

    /**
     * 绿地类型
     */
    @ApiModelProperty(value = "绿地类型")
    @Excel(name = "绿地类型", orderNum = "0")
    private String type;

    /**
     * 面积(平方米）
     */
    @ApiModelProperty(value = "面积(平方米）")
    @Excel(name = "面积(平方米）", orderNum = "0")
    private Double measure;

    /**
     * 绿化覆盖面积
     */
    @ApiModelProperty(value = "绿化覆盖面积")
    @Excel(name = "绿化覆盖面积", orderNum = "0")
    private Double greMeasure;

    /**
     * 地点描述
     */
    @ApiModelProperty(value = "地点描述")
    @Excel(name = "地点描述", orderNum = "0")
    private String address;

    /**
     * 范围
     */
    @ApiModelProperty(value = "范围")
    @Excel(name = "范围", orderNum = "0")
    private Geometry mapRanges;

    /**
     * 计算空间数据
     */
    @ApiModelProperty(value = "计算空间数据")
    @Excel(name = "计算空间数据", orderNum = "0")
    private String geoWkt;

    /**
     * 公园服务半径
     */
    @ApiModelProperty(value = "公园服务半径")
    @Excel(name = "公园服务半径", orderNum = "0")
    private Geometry serviceRadius;

    /**
     * 街道Id
     */
    @ApiModelProperty(value = "街道Id")
    @Excel(name = "街道Id", orderNum = "0")
    private String streetId;

    /**
     * 街道名称
     */
    @ApiModelProperty(value = "街道名称")
    @Excel(name = "街道名称", orderNum = "0")
    private String streetName;

    /**
     * 区域Id
     */
    @ApiModelProperty(value = "区域Id")
    @Excel(name = "区域Id", orderNum = "0")
    private String distractId;

    /**
     * 区域
     */
    @ApiModelProperty(value = "区域")
    @Excel(name = "区域", orderNum = "0")
    private String distractName;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    @Excel(name = "备注", orderNum = "0")
    private String desc;

    /**
     * 普查日期
     */
    @ApiModelProperty(value = "普查日期")
    @Excel(name = "普查日期", orderNum = "0")
    private LocalDate date;

    /**
     * 植被属性
     */
    @ApiModelProperty(value = "植被属性")
    @Excel(name = "植被属性", orderNum = "0")
    private String attr;

    /**
     * 植被数量
     */
    @ApiModelProperty(value = "植被数量")
    @Excel(name = "植被数量", orderNum = "0")
    private Integer attrCnt;

    /**
     * 是否免费开放
     */
    @ApiModelProperty(value = "是否免费开放")
    @Excel(name = "是否免费开放", orderNum = "0")
    private Boolean isFree;

    /**
     * 版本 1 当前 0 历史
     */
    @ApiModelProperty(value = "版本 1 当前 0 历史")
    @Excel(name = "版本 1 当前 0 历史", orderNum = "0")
    private Integer isNew;

    /**
     * 数据发布 0 false 1 ture
     */
    @ApiModelProperty(value = "数据发布 0 false 1 ture")
    @Excel(name = "数据发布 0 false 1 ture", orderNum = "0")
    private Boolean dataPublic;

    /**
     * 
     */
    @ApiModelProperty(value = "")
    @Excel(name = "", orderNum = "0")
    private String deptId;

    @ApiModelProperty(value = "附件")
    private List<GreFile> fileList;


    @ApiModelProperty(value = "普查日期")
    @Excel(name = "普查日期", orderNum = "0")
    private LocalDateTime dbLastUpdateDate;

    @ApiModelProperty(value = "修改人")
    private String dbCreateName;
}
